1. Field of the Invention
The present invention relates to a local terminal search system, and more particularly to a local terminal search system, a filtering method used for the same, and a recording medium that stores a program for performing the method, which can minimize a search response delay caused by filtering and indexing processes when a request to search data stored in a local terminal has been made.
2. Description of the Related Art
Due to increase storage space and increased data processing performance of local terminals, users can store a large amount of documents, image files, mails, moving images, or the like in their local terminals. It is necessary to allow users to search data stored in local terminals since it is practically impossible for users to memorize a large number of file names and directories of files of a large amount of data.
Local terminals provide a file search function or the like which allows the user to search data in the local terminals. However, the file search function requires that the user know part of a file name to be searched for. For example, when the user desires to search for document files associated with ‘patent search report’ in the local terminal, the user cannot find any corresponding file in the local terminal even by inputting a corresponding keyword such as ‘patent’, ‘search’, or ‘report’ if any corresponding file in the local terminal does not contain a word ‘patent’, ‘search’, or ‘report’ in its file name.
Thus, a desktop search service has been introduced for more efficient search of data stored in the local terminal. When the user inputs a keyword through a deskbar, a toolbar, or a web browser, the desktop search service searches the local terminal for data associated with the input keyword. For the local terminal search, filtering or indexing is performed on data stored in the local terminal to build an index database.
FIG. 1 illustrates an example of a conventional local terminal search system. As shown in FIG. 1, the conventional local terminal search system includes a search interface program 100, a search request processing unit 102, a file collection unit 104, a master filtering unit 106, a search/index unit 108, a slave filtering unit 110, and an index database 112.
The search interface program 100 functions to receive a search request from a user and then to provide a search result to the user.
The search request processing unit 102 transfers search request information including keyword information inputed by the user to the search/index unit 108 and converts a search result generated by the search/index unit 108 into a prescribed document format to provide it to the search interface program 100.
The search/index unit 108 receives search request information from the search request processing unit 102 and searches data stored in the local terminal using search keyword and search category information included in the search request information. The search/index unit 108 performs searching using index information stored in the index database 112 and generates and provides search result information to the search request processing unit 102.
The file collection unit 104 functions to collect file information stored in the local terminal. The file information collected by the file collection unit 104 is provided to the master filtering unit 106. The master filtering unit 106 provides file path information included in the collected file information to the slave filtering unit 110. Filtering is performed at the slave filtering unit 110.
To filter a file at the slave filtering unit 110 and then to store the filtered file in the index database 112, it takes 1-2 seconds when it is an image file, 2-3 seconds when it is an audio file, and 5-8 seconds when it is a moving image file.
A process for filtering a file and a process for storing it in the index database 112 are regarded as an atomic operation until one session is completed. Accordingly, until the filtering and indexing processes are completed, the thread lock is not released even when a search request has been received from the user during such processes.
Thus, the conventional local terminal search method has a problem in that the user must wait up to 8 seconds or longer. In addition, when an initial indexing process is performed, file collection is delayed or the response to a dynamic change of file change is not immediate since a main thread of a main processor of the master filter unit must wait until the slave filter unit completes the above processes.